package com.whfc.fvs.service;

import com.whfc.common.exception.BizException;
import com.whfc.common.result.PageData;
import com.whfc.fvs.dto.FvsLogDTO;
import com.whfc.fvs.dto.FvsSnapshotDTO;
import com.whfc.fvs.entity.FvsSnapshot;

import java.util.Date;
import java.util.List;

/**
 * @author qzexing
 * @version 1.0
 * @date 2021-02-24 14:15
 */
public interface FvsSnapshotService {

    /**
     * 获取抓拍列表
     *
     * @param deptId    组织机构ID
     * @param pageNum   页码
     * @param pageSize  每页数量
     * @param startDate 开始日期
     * @param endDate   结束日期
     * @param keyword   搜索关键字
     * @return 抓拍列表
     * @throws BizException 业务异常
     */
    PageData<FvsSnapshotDTO> list(Integer deptId, Integer pageNum, Integer pageSize, Date startDate, Date endDate, String keyword) throws BizException;

    /**
     * 生成指定组织机构快照
     *
     * @param deptId 组织机构ID
     * @throws BizException 业务异常
     */
    void createSnapshot(Integer deptId) throws BizException;

    /**
     * 视频日志
     *
     * @param deptId
     * @param date
     * @return
     */
    FvsLogDTO fvsLog(Integer deptId, Date date);

    void batchInsert(List<FvsSnapshotDTO> snapshotList);
}
